#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/stat.h>
#include <sys/ipc.h>
#include <sys/msg.h>
#include "StdMsgQueue.h"




struct StdMsgQueue
{
    int msgID;
};
Msg *InitMsg(const char *path, int projectID)
{
    Msg *m = (Msg*)malloc(sizeof(Msg));
    if(m == NULL)
        return NULL;

    key_t key = ftok(path,projectID);
    if(key < 0)
    {
        perror("ftok");
        return NULL;
    }

    m->msgID = msgget(key,IPC_CREAT | 0777);
    if(m->msgID < 0)
    {
        perror("msgget");
        free(m);
        return NULL;
    }
    return m;
}